package main

import "fmt"

// 1784. 检查二进制字符串字段
// 给你一个二进制字符串 s ，该字符串 不含前导零 。
// 如果 s 包含 零个或一个由连续的 '1' 组成的字段 ，返回 true​​​ 。否则，返回 false 。
// 如果 s 中 由连续若干个 '1' 组成的字段 数量不超过 1，返回 true​​​ 。否则，返回 false 。

// 只能有一段1

func checkOnesSegment(s string) bool {
	segementCnt := 0
	index, n := 0, len(s)
	for index < n {
		oneFlag := false
		for index < n && s[index] == '1' {
			oneFlag = true
			index++
		}
		if oneFlag {
			segementCnt++
		} else {
			index++
		}
		if segementCnt > 1 {
			return false
		}
	}
	return segementCnt <= 1
}

func main() {
	s := "1001"
	res := checkOnesSegment(s)
	fmt.Println(res)
	s = "110"
	res = checkOnesSegment(s)
	fmt.Println(res)
}
